<?php

/**
 * Description of DbRechtGroep
 *
 * @author Sander van Belleghem <sandervanbelleghem@live.nl>
 * @version 0.1
 */

require_once FILE_DB_DATABASE;

class DbRechtGroep extends Database {
    
    private $recht_groep_id;
    private $recht_bitfield;
    private $recht_groep_beschrijving;
    
    public function __construct() {
        parent::__construct();
    }
    
    // Getters
    public function getRechtGroepId() {
        return $this->recht_groep_id;
    }

    public function getRechtGroepBeschrijving() {
        return $this->recht_groep_beschrijving;
    }
    
    // Setters
    public function setRechtGroepId($recht_groep_id) {
        $this->recht_groep_id = $recht_groep_id;
    }

    public function setRechtGroepBitfield($recht_bitfield) {
        $this->recht_bitfield = $recht_bitfield;
    }

    public function setRechtGroepBeschrijving($recht_groep_beschrijving) {
        $this->recht_groep_beschrijving = $recht_groep_beschrijving;
    }

        
    public function getRechtGroep(){
        $this->dbquery("SELECT * FROM recht_groep WHERE 
                        recht_groep_id = '" . mysql_real_escape_string($this->recht_groep_id) . "'");

        if ($this->dbNumRows() == 1) {
            
            return $this->dbFetchArray();
            
        } else {
            return false;
        }
    }
    
    public function getRechtGroepList(){
        $this->dbquery("SELECT * FROM recht_groep GROUP BY recht_groep_beschrijving ORDER BY recht_groep_id");

        if ($this->dbNumRows() >= 1) {
 
            return $this->dbFetchAll();
            
        } else {
            return false;
        }
    }
    
    public function saveRechtGroep(){
                
        $selectquery = ("SELECT * FROM recht_groep WHERE recht_groep_beschrijving = '" . mysql_real_escape_string($this->recht_groep_beschrijving) . "'");

        if($this->dbquery($selectquery)){
        
            if ($this->dbNumRows() == 0){

                $insertquery = ("INSERT INTO recht_groep (recht_groep_beschrijving) 
                                VALUES ('" . mysql_real_escape_string($this->recht_groep_beschrijving) . "')");

                if($this->dbquery($insertquery)){
                    
                    $this->recht_groep_id = mysql_insert_id();
                    return true;
                } else {
                    return false;
                }   
            } else {
                return false;
            }
        } else {
            return false;
        }
    }
    
    public function updateRechtGroep(){
        $this->dbquery("UPDATE recht_groep 
                        SET recht_bitfield = '" . mysql_real_escape_string($this->recht_bitfield) . "',
                            recht_groep_beschrijving = '" . mysql_real_escape_string($this->recht_groep_beschrijving) . "'
                        WHERE recht_groep_id ='" . mysql_real_escape_string($this->recht_groep_id) . "'");
    }
    
    public function deleteRechtGroep(){
        $this->dbquery("DELETE FROM recht_groep WHERE recht_groep_id ='" . mysql_real_escape_string($this->recht_groep_id) . "'");
    }
}

class TestDbRechtGroep {

    public function __construct() {
        try {
            $test = new DbRechtGroep();

            echo '<pre>';
            var_dump($test);
            echo '</pre>';
        } catch (Exception $e) {
            echo '<pre>';
            echo $e->getTraceAsString();
            echo '</pre>';
            trigger_error($e->getMessage());
        }
    }

}

?>
